System and method for connecting and introducing trusted contacts

ABSTRACT

An introduction or connection platform is described that improves the performance of a mobile device having a touchscreen by reducing the number of user inputs needed and also the amount of memory required for making connections in Apps that are used with backend databases. Examples of the subject technology include or provide: (1) an application for a mobile device that provides for a simple way to introduce someone to someone else (or multiple people); and (2) a mobile application that provides for receiving as a user input a simple swipe (e.g., finger or other digit being swept across the mobile&#39;s touch screen) in order to introduce someone in response to a post (e.g., a person looking for someone with a certain skill and/or experience set). Exemplary embodiments are implemented on a mobile device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of, and claims priority to, U.S.patent application Ser. No. 15/225,337, titled “SYSTEM AND METHOD FORCONNECTING AND INTRODUCING TRUSTED CONTACTS” and filed on Aug. 1, 2016,which claims the benefit of, and priority to, U.S. Provisional PatentApplication No. 62/325,382, titled “System and Method for Connecting andIntroducing Trusted Contacts,” and filed Apr. 20, 2016, the entirecontents of the foregoing applications are incorporated herein byreference for all purposes.

BACKGROUND Technical Field

This disclosure relates to systems and methods for making orimplementing connections, e.g., introducing trusted individuals, insoftware applications and databases using touchscreens of mobiledevices, such as cellular phones, tablets, or the like.

Description of Related Art

The usage of mobile wireless devices has increased greatly andprogressed to the point where, for some geographic regions, most peoplehave at least one mobile device, e.g., a smart phone, personal digitalassistant (PDA), or a tablet. Users commonly install or have installedvarious software applications (a.k.a. “Apps”) on those devices. Notableexamples of Apps include those that provide access to and use of socialmedia such as Facebook, Myspace, and LinkedIn, to name just a few.

Social media have developed various ways for users to connect with oneanother. For example, social media applications such as Facebook andLinkedIn provide ways for their users to connect to one another. Suchapproaches, however, present difficulties and limitations whenimplemented on mobile devices. Limitations arise from the limitedtouchscreen space available to a user when working with a softwareapplication resident on a mobile device, often requiring the use of manyuser input screens (e.g., “dropdowns”)—with attendant memoryrequirements—for even simple navigation and use of the Apps on themobile devices. Those memory requirements include not only the so-called“frontend,” referring to the mobile device itself, but also the“backend,” referring to a server and one or more databases that thefront end communicates with.

As an example of limitations in the social media context, peoplepresently face issues while making introductions to or receivingintroductions from other people in the social media network, directly orindirectly, possibly involving one or more intermediary people for thelatter situation. A person may make an introduction and ask permissionfrom each of the introduced to see if both parties want to beintroduced. This takes extra effort on the part of the introducer toensure that all parties have given permission to give out their contactinformation. A person may also make an introduction and not askpermission from either user. This can lead to a few different outcomes:(A) one of the introduced parties may not desire someone reaching out tothem and is placed in an awkward situation stating “No, I'm sorry, I amnot interested in communicating with you”; (B) if the foregoing scenariohappens, the introducer is also put in an awkward situation trying tobalance his relationship between the introduced parties; (C) one of theintroduced parties may not have wanted a specific contact point to begiven out (e.g., someone gives out a personal phone number instead of awork email address); and (D) a person may make an introduction and notprovide enough contextual information to the introduced parties to showthat the introduction is valuable or mutually beneficial to all parties.

Using a mobile device to make connections, through its resident Apps,between members or items in one group with members or items of anothergroup has typically involved the use of three lists: one for each of thedifferent groups, and a separate one for listing the connections. Eachlist of groups has typically required a separate dropdown screen for theuser, and also a table in memory. The more memory used by the App(s) onthe mobile device, the more memory is needed for the database(s) andrelated server(s) on the backend to which the App(s) are linked and themore data is needed to be sent wirelessly to and from the mobile device.These represent factors slowing down performance of the App(s),server(s) and database(s).

SUMMARY

One aspect of the subject technology of present disclosure provides anintroduction or connection platform that improves the performance of amobile device having a touchscreen by reducing the number of user inputsneeded and also the amount of memory required for making connections inApps resident on that mobile device and that are used with backenddatabases.

Examples of the subject technology include or provide: (1) anapplication (App) for a mobile device that provides for a simple way tointroduce someone to someone else (or multiple people); and (2) a mobileapplication that provides for receiving as a user input a simple swipe(e.g., finger or other digit being swept across the mobile's touchscreen) in order to introduce someone in response to a post (e.g., aperson looking for someone with a certain skill and/or experience set).Exemplary embodiments are implemented on a mobile device.

These, as well as other components, steps, features, benefits, andadvantages, will now become clear from a review of the followingdetailed description of illustrative embodiments, the accompanyingdrawings, and the claims.

An example of a computer-implemented memory-efficient method utilizing atouchscreen for connecting users within a network of users is provided.The method may include:

monitoring a user input area of a touchscreen user interface;

from the user input area, receiving a user indication that a connectionbetween a seeker and a provider is to be made;

in response to the user connection indication, importing a list ofcontacts and displaying the list in the user interface;

after displaying the list and while monitoring the user input area,receiving a first user swipe input as a detected firstuser-finger-dragging motion;

verifying that the time elapsed between the beginning and completion ofthe first user-finger-dragging motion is within a predetermined rangeand constitutes a single continuous motion, thereby recognizing a firstswipe motion;

upon verifying the time and continuity of the user's first swipe motion,indicating in the user interface a selection of a provider;

while continuing to monitor the user input area, receiving a second userswipe input as a detected second user-finger-dragging motion;

verifying that the time elapsed between the beginning and completion ofthe second user-finger-dragging motion is within a predetermined amountof time and constitutes a single continuous motion, thereby recognizinga second swipe motion;

upon verifying the time and continuity of the user's second swipemotion, indicating in the user interface a selection of a seeker;

after indication of the selection of the seeker, receiving a user inputinitiating electronic transmission of an introduction message to theselected seeker;

receiving an electronic acceptance of the introduction message from theselected seeker;

after receiving the electronic acceptance from the seeker,electronically sending a request to the provider to accept or declinethe introduction;

receiving an electronic acceptance of the introduction message from theprovider; and

in response to the provider accepting the introduction, displaying avisual indication on the graphical user interface indicating that theprovider and seeker are connected.

The noted method may include that the first swipe motion is from left toright on the mobile touch screen. The noted method may include that thesecond swipe motion is from right to left on the mobile touch screen.The noted method may include that the first swipe motion is from rightto left on the mobile touch screen. The noted method may include thatthe second swipe motion is from left to right on the mobile touchscreen. The noted method may include revising a database linked to theuser interface to indicate that the provider and seeker are connected.The noted method may include that verifying the user's first swipemotion further includes verifying that the angle of the swipe motionwith respect to a horizontal axis of the user interface is within apredetermined range. The noted method may include that verifying theuser's second swipe motion further includes verifying that the angle ofthe swipe motion with respect to a horizontal axis of the user interfaceis within a predetermined range.

An example of a non-transitory, tangible, computer-readable storagemedium containing a program of instructions that causes a computersystem having a processor running the program of instructions to performthe instructions is provided; the program may include instruction to:

monitor a user input area of a touchscreen user interface;

from the user input area, receive a user indication that a connectionbetween a seeker and a provider is to be made;

in response to the user connection indication, import a list of contactsand display the list in the user interface;

after the list of contacts is displayed and while the user input area ismonitored, receive a first user swipe input as a detected firstuser-finger-dragging motion;

verify that the time elapsed between the beginning and completion of thefirst user-finger-dragging motion is within a predetermined range andconstitutes a single continuous motion, thereby recognizing a firstswipe motion;

upon verification of the time and continuity of the user's first swipemotion, indicate in the user interface a selection of a provider;

while continuing to monitor the user input area, receive a second userswipe input as a detected second user-finger-dragging motion;

verify that the time elapsed between the beginning and completion of thesecond user-finger-dragging motion is within a predetermined amount oftime and constitutes a single continuous motion, thereby recognizing asecond swipe motion;

upon verification of the time and continuity of the user's second swipemotion, indicate in the user interface a selection of a seeker;

after indication of the selection of the seeker, receive a user inputinitiating electronic transmission of an introduction message to theselected seeker;

receive an electronic acceptance of the introduction message from theselected seeker;

after receipt of the electronic acceptance from the seeker,electronically send a request to the provider to accept or decline theintroduction;

receive an electronic acceptance of the introduction message from theprovider; and

in response to the provider acceptance of the introduction, display avisual indication on the graphical user interface indicating that theprovider and seeker are connected.

The noted non-transitory, tangible, computer-readable storage medium mayinclude that the program further includes instructions to recognize afinger-dragging motion from left to right on the mobile touch screen asthe first swipe motion. The noted non-transitory, tangible,computer-readable storage medium may include that the program furtherincludes instructions to recognize a finger-dragging motion from rightto left on the mobile touch screen as the second swipe motion. The notednon-transitory, tangible, computer-readable storage medium may includethat the program further includes instructions to recognize afinger-dragging motion from right to left on the mobile touch screen asthe first swipe motion. The noted non-transitory, tangible,computer-readable storage medium may include that the program furtherincludes instructions to recognize a finger-dragging motion from left toright on the mobile touch screen as the second swipe motion. The notednon-transitory, tangible, computer-readable storage medium may includethat the program further includes instructions to revise a databaselinked to the user interface to indicate that the provider and seekerare connected. The noted non-transitory, tangible, computer-readablestorage medium may include that the program further includesinstructions to verify the user's first swipe motion by verifying thatthe angle of the swipe motion with respect to a horizontal axis of theuser interface is within a predetermined range. The notednon-transitory, tangible, computer-readable storage medium may includethat the program further includes instructions to verify the user'sfirst swipe motion by verifying that the angle of the swipe motion withrespect to a horizontal axis of the user interface is within apredetermined range.

A computing device is provided that may include:

a touchscreen having a touchscreen user interface;

one or more processors;

memory; and

one or more programs, with the one or more programs being stored in thememory and configured to be executed by the one or more processors, theone or more programs including: instructions for:

-   -   monitoring a user input area of the touchscreen user interface;    -   from the user input area, receiving a user indication that a        connection between a seeker and a provider is to be made;    -   in response to the user connection indication, importing a list        of contacts and displaying the list in the user interface;    -   after displaying the list and while monitoring the user input        area, receiving a first user swipe input as a detected first        user-finger-dragging motion;    -   verifying that the time elapsed between the beginning and        completion of the first user-finger-dragging motion is within a        predetermined range and constitutes a single continuous motion,        thereby recognizing a first swipe motion;    -   upon verifying the time and continuity of the user's first swipe        motion, indicating in the user interface a selection of a        provider;    -   while continuing to monitor the user input area, receiving a        second user swipe input as a detected second        user-finger-dragging motion;    -   verifying that the time elapsed between the beginning and        completion of the second user-finger-dragging motion is within a        predetermined amount of time and constitutes a single continuous        motion, thereby recognizing a second swipe motion;    -   upon verifying the time and continuity of the user's second        swipe motion, indicating in the user interface a selection of a        seeker;    -   after indication of the selection of the seeker, receiving a        user input initiating electronic transmission of an introduction        message to the selected seeker;    -   receiving an electronic acceptance of the introduction message        from the selected seeker;    -   after receiving the electronic acceptance from the seeker,        electronically sending a request to the provider to accept or        decline the introduction;    -   receiving an electronic acceptance of the introduction message        from the provider; and    -   in response to the provider accepting the introduction,        displaying a visual indication on the graphical user interface        indicating that the provider and seeker are connected.

The noted computing device may include instructions that the first swipemotion is from left to right on the mobile touch screen. The notedcomputing device may include instructions that the second swipe motionis from right to left on the mobile touch screen. The noted computingdevice may include instructions that the first swipe motion is fromright to left on the mobile touch screen. The noted computing device mayinclude instructions that the second swipe motion is from left to righton the mobile touch screen. The noted computing device may includeinstructions for revising a database linked to the user interface toindicate that the provider and seeker are connected. The noted computingdevice may include instructions that verifying the user's first swipemotion further includes verifying that the angle of the swipe motionwith respect to a horizontal axis of the user interface is within apredetermined range. The noted computing device may include instructionsthat verifying the user's second swipe motion further includes verifyingthat the angle of the swipe motion with respect to a horizontal axis ofthe user interface is within a predetermined range.

BRIEF DESCRIPTION OF DRAWINGS

The drawings are of illustrative embodiments. They do not illustrate allembodiments. Other embodiments may be used in addition or instead.Details that may be apparent or unnecessary may be omitted to save spaceor for more effective illustration. Some embodiments may be practicedwith additional components or steps and/or without all of the componentsor steps that are illustrated. When the same numeral appears indifferent drawings, it refers to the same or like components or steps.

FIG. 1 is a flow chart that illustrates an example of a process ofintroducing a Seeker to a Provider.

FIG. 2 illustrates an example the user experience in the process ofintroducing the Seeker to the Provider.

FIG. 3 is a flow chart that illustrates an example the process oflooking for someone in order to complete a project by creating a post bylooking for a specific skill or occupation in accordance.

FIG. 4 illustrates an example the user experience in the process oflooking for someone in order to complete a project by creating a post bylooking for a specific skill or occupation.

FIGS. 5A-5E depict various differences between an example of the subjecttechnology and a prior-art software application.

FIGS. 6A-6C depict various differences between an example of the subjecttechnology and another prior-art software application.

FIGS. 7A-7C depict various differences between an example of the subjecttechnology and a further prior-art software application.

DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS

Illustrative embodiments are now described. Other embodiments may beused in addition or instead. Details that may be apparent or unnecessarymay be omitted to save space or for a more effective presentation. Someembodiments may be practiced with additional components or steps and/orwithout all of the components or steps that are described.

One aspect of the subject technology of present disclosure provides anintroduction or connection platform (App) that improves the performanceof a mobile device having a touchscreen by reducing the number of userinputs needed and also the amount of memory required for makingconnections in Apps that are resident on the mobile device and used withone or more backend databases.

Aspects of the disclosure offer advantages, including technicalimprovements in the performance of the both the frontend and the backend(database and operating system). These technical advantages include butare not limited to the following: (1) Using fewer steps on the frontend(fewer user inputs and steps in a mobile app), results in fewer calls tothe backend server, and therefore the backend will perform better (morequickly, all other factors being the same); (2) The new way to connect Ato B has an impact on the backend architecture and how the database isdesigned, optimizing its performance; the server and/or database can besmaller; and/or (3) The need for fewer tables in memory.

Expanding on the third technical advantage noted above, the link betweenone or more members of a first group or list (e.g., user A) to one ormore members of another group or list (e.g., user B), in the past forprior techniques, would have required two (2) tables: one containing alist of members of the first group or list; and one containing a list ofmembers of users of the second group or list. An aspect of the subjecttechnology does away with the need for two tables and treats both listsas being one (combines into one); and, that in turn can have a majorimplication on the size of the database that is used for the table andthe interaction that can happen. Embodiments of the disclosureaccordingly increase the performance of an application (App) accessedwith a touchscreen and working with a database and server. For example,the disclosure provides for the use of fewer tables, which in turn usesa less amount of memory (e.g., storage space on a disk or a RAM unit).Fewer tables require less memory to load those tables (e.g., intostorage space on a disk or a RAM unit). Use of embodiments of thedisclosure also provides for less memory needed to link users, e.g., ofan App, since instead of needing three (3) tables, links (indicating theconnections) can be stored in a second table, without the need for athird table. Fewer links allows for a user (or an App) having fasteraccess to information. Fewer tables or indexes results in making runningstatistics faster.

Embodiments of the disclosure address and overcome specific technicallimitations of touchscreens such as used on the majority of present-daymobile devices, e.g., cellular phones, PDAs, and/or tablets and thelike. Many of these limitations arise in the context of using a mobiledevice's (e.g., a cellular phone's) touchscreen to navigate and use thefunctionality of one or more social networks, for example, as accessedby one or more Apps resident on the mobile device.

As noted previously, people presently face issues while makingintroductions to or receiving introductions from other people innetworks, e.g., social media networks, directly or indirectly, possiblyinvolving one or more intermediary people in the network for the latter.A person may make an introduction and ask permission from each of theintroduced to see if both parties want to be introduced. This takesextra effort on the part of the introducer to ensure that all partieshave given permission to give out their contact information. A personmay also make an introduction and not ask permission from either user.This can lead to a few different outcomes: (A) One of the introducedparties may not desire someone reaching out to them and is placed in anawkward situation, e.g., stating “No, I'm sorry, I am not interested incommunicating with you”; (B) if the foregoing scenario happens, theintroducer is also put in an awkward situation trying to balance hisrelationship between the introduced parties; (C) one of the introducedparties may not have wanted a specific contact point to be given out(e.g., someone gives out a personal phone number instead of a work emailaddress.); and, (D) a person may make an introduction and not provideenough contextual information to the introduced parties to show that theintroduction is valuable or mutually beneficial to all parties.

Embodiments of the present disclosure solve these issues by providing anApp (a.k.a. SwishLinks App) that provides the following:

-   -   (1) The introducer is provided with a tool that simplifies the        introduction process, e.g., the user can simply swipe on two        people, add a message, and is then done;    -   (2) By implementing a double-opt-in introduction, both        introduced parties are asked (e.g., by the SwishLinks App) if        they would like to be introduced in the first place;    -   (3) The contextual information necessary to facilitate the        introduction is provided to the user(s); and    -   (4) The introduced parties are provided with the opportunity to        determine what contact information (if any) they would like to        share with the other party.

One aspect of the disclosure provides a novel set of steps (of method orprocess) and/or specially programmed apparatus (computing device) thatapply to the specific environment of a touchscreen, e.g., of the sizetypically used for mobile cellular phones and the like.

Another aspect of the disclosure provides for the use of a singlelist—for the one or more members of a first group and also the one ormore members of a second group—instead of two lists. Accordingly, on asmall touchscreen (e.g., of a mobile cellular phone or tablet, etc.),anytime a user has the need to associate or map one (or many) from onelist to one (or many) from another list, a relatively simple swipegesture can be used as a simple and fast way to make connections betweenmembers or items on the single list, which has replaced a typical userinterface for two separate lists, requiring two dropdown screens toappear on the touchscreen. As lists in Apps are typically represented bytables in memory, the need for fewer lists reduces the number of tablesused in memory

Further embodiments of the disclosure provide advantages/benefits forvarious actions utilizing a touchscreen, e.g., of a mobile cellularphone or tablet, etc., by providing a more general means (method,system, and/or apparatus) that allows a more efficient (time, memory,user inputs) way to connect one or more members or items of one group orlist with or to one or more items or members of another group or list.Examples of the subject technology can be used by money transferapplications (“Apps”) to transfer money. A software applicationaccording to the disclosure can be used by banks to pay bills. In suchan example, a swipe to the left could select a particular account oraccounts. A swipe right could select one or more payee(s).

An aspect of the disclosure provides benefits and advantages to Appsutilizing a touch screen. For example:

-   -   (1) Embodiments of the disclosure can increases the performance        of the application (App) by reducing the needed steps to connect        subject A to subject B; and    -   (2) An innovative platform, e.g., SwishLinks App, according to        the present disclosure can provide users with an easy way to        connect and share contacts without going through prior art steps        such as phone calls and emails.

Embodiments of the present disclosure provide methods/systems that areimplemented on or with a mobile device and introduce a user, e.g., of asocial media network (e.g., a Seeker) to another user (e.g., a Provideror multiple Providers). A third party (e.g., a Connector) can be amediator, facilitating the connecting of the Seeker to the Provider. Amobile application according to the present disclosure (e.g., referredto as a “SwishLinks application” or “SwishLinks App”) can allow aConnector to introduce a Seeker to a Provider (or multiple Providers);or vice versa by introducing the Provider to a Seeker. Two or morepeople may be connected (one to one, one to many, or many to one) with asimple gesture. Embodiments of the present disclosure can provide suchconnectivity with a minimized set of gestures required by a user, incontrast with prior techniques and applications. Of course whileexemplary embodiments are described as introducing one user to another,the scope of the present disclosure is not limited to such. Otherembodiments of the present disclosure may be utilized to introduce (i) ajob to person, (ii) a business (e.g., a restaurant, company, etc.) toperson, (iii) places (tourism, historic, etc.) to person, (iv) filesharing (e.g., pictures, videos, documents, etc.) to person, and/or (v)location (e.g., GPS location) to person, Furthermore, while exemplaryembodiments are described herein in the context of one user sendinginformation or connecting to a single other user, the present disclosureis not limited to such. For example, the following connection ormappings between users are included: (i) one-to-one; (ii) one-to-many;(iii) many-to-one; and, (iv) many-to-many.

FIG. 1 shows a flow chart for an exemplary embodiment of a process (or,method) 100 of introducing a user (e.g., a Seeker) to another user(e.g., a Provider) via the SwishLinks App.

As a high-level summary of process 100, once a user installs and opensthe SwishLinks App on a mobile device (e.g., a smartphone, PDA, tablet,or the like), as a first time user, the user is invited to set up anaccount, and give the SwishLinks App access to their mobile device'scontact(s). From the connections page, a user may be able to see andaccess their device's contact(s) as well as their Links. Playing therole of a Connector, the user selects the Seeker, e.g., by swiping theirfinger from the left to the right over the Seeker's name, then the userselects the Provider, e.g., by swiping their finger over the Provider'sname from the right to left. For some applications this may be realizedas a simple reciprocating motion or back-and-forth motion of a fingeracross the touchscreen. When these two simple gestures are completed,the SwishLinks-User is asked to enter an optional message that will besent to both parties. When the send button is pressed the introductionprocess is initiated.

Referring to FIG. 1, process 100 is explained in more detail. A useracting as a Connector is indicated at 102 as wanting to introduce aSeeker to a Provider. The Seeker could be a person who is looking tofind a provider of goods or services. The user navigates to theconnection page, as shown at 104. A call is made to the serverassociated with the user's SwishLinks App to get the list of the user'slinks; the list of contacts is imported from the user's device upon theuser granting access. The Connector selects a Provider, as shown at 106,by touching the touchscreen of the mobile device. In exemplaryembodiments, the selection is made by the user swiping her or hisfinger, e.g., from left to right. The process 100 can consider whetherthe Provider is a SwishLinks User, as shown at 108 (as a question, withconditional branches to 110 and 112). If the Provider is not aSwishLinks User, the Connector can select a contact to use to connectwith the Provider, as shown at 110. If the Provider is a SwishLinksUser, the Connector can select the Seeker, e.g., by swiping his or herfinger from right to left, as shown at 112. The process can considerwhether the Seeker is a SwishLinks User, as shown at 114 (as a question,with conditional branches to 116 and 118). If the Seeker is not aSwishLinks User, a host profile can be created, e.g., based on theSeeker's email address of phone number, etc., as shown at 116.

Continuing with the description of FIG. 1 and process 100, the Connectorcan select a contact (e.g., contact information such as a phone number,email address, etc.) to user to connect with the Seeker, as shown at120. The Connector can be offered the option to add a message that willbe sent to both parties (Seeker and Provider) and then can send themessage, as shown at 118. The message may be different depending onwhether the parties are SwishLinks Users, as shown at 124 and 130. Forexample, the process can consider whether the Seeker is a SwishLinksUser, as shown at 124 (as a question, with conditional branches to 122and 128). If the Seeker is not a SwishLinks User, a short-messageservice (SMS) message, or “text message,” or email can be sent to theSeeker; the message received by the Seeker can include a Web link withoptions to accept or decline the introduction, as shown at 122. If theSeeker is a SwishLinks User, the Seeker receives a request in the SL-App(resident on the Seeker's mobile device) to accept or decline theintroduction, as shown at 128.

With continued reference to FIG. 1, the process 100 can further considerwhether the Seeker accepts the introduction, as shown at 126 (as aquestion, with conditional branch to 130 shown; the branch declining theintroduction is not shown in the interest of clarity). Upon the Seeker'sacceptance, the process can consider whether the Provider is aSwishLinks User, as shown at 130 (as a question, with conditionalbranches to 132 and 134). If the Provider is not a SwishLinks User, aghost profile can be created (if it doesn't already exist), e.g., basedon the Provider's email address or phone number, as shown at 132. If nota SwishLinks User, a SMS message or email message can be sent to theProvider (depending on the Connector's selection); the message caninclude a Web link with options to accept or decline the introduction,as shown at 138. If the Provider is a SwishLinks User, the Providerreceives a request in the SwishLinks App to accept or decline theintroduction, as shown at 134. The process 100 can consider whether theProvider accepts the introduction, as shown at 136 (as a question, withconditional branch to 140 shown for the case the Provider accepts theintroduction; the case where the Provider declines the introduction isomitted for clarity). The Seeker and Provider are connected in theSwishLinks App when the Provider accepts the introduction, as shown at140.

As a result of process 100, the Connector can connect a Seeker to aProvider with a minimum or reduced number of gestures as inputs to amobile device, compared with prior art techniques. In exemplaryembodiments, the connection gestures are mirror images (or areessentially mirror images) of one another (e.g., are reciprocal orreversed motion). For example, a swiping of a finger from right to left(or vice versa) for one selection and the reverse motion, i.e., swipingof the finger from left to right (or vice versa) for the otherselection. In exemplary embodiments, selections are made by a userswiping a finger from left to right or right to left. The detection ofthe user's input (e.g., a finger-drag or swipe), can include (i)detecting a user's finger on an area of the screen; (ii) detecting aswipe action from left to right or from right to left; and, (iii)consideration of an angle of the gesture with the horizontal and a deltatime. The implementation of gesture handling can be different perplatform, e.g., type of mobile device and operating system.

For example, for current versions of the i Operating System, or, “iOS,”Apple Inc.'s operating system used for iPhones), GestureRecognizers canbe used to handle the conflict of gestures. It is a native class thatautomatically detects a “pan” based on their native variables. Then,when a pan gesture is observed, those that are within a specified range,e.g., 45 degrees from the horizontal (+45° to −45°) are captured; anoptional check can also be made to check if the velocity is not too highvertically. Checking the velocity allows the SwipableItem to ignorehorizontal swipes that occur by mistake when a user swipes fast(vertically), as may be the case when the user is scrolling through alist. Of course, while plus and minus 45 degrees is described as asuitable range, other ranges can be used within the scope of thedisclosure, e.g., +50° to −50°; +60° to −60°; furthermore, the rangesare not required to be symmetrical but rather can have different plusand minus values, e.g., +50° to −40°, +40° to −50°, etc.

As another example, for the Android OS, “scaled touch slops” can be usedto detect when a user is starting a “pan” gesture. Using a touch slopallows for precision (in gesture determination) because the value willbe automatically adjusted to the device's screen size and density. Tohandle the gesture conflict, the native methods OnTouch andOnlnterceptTouchEvent can be used. Scrolling events that are longer thanthe touchslop on the X axis are intercepted. All other events gothrough. If the user scrolls vertically, the parent ListView willintercept the vertical scrolling.

The time period over which a gesture occurs (time delta) can beconsidered for an input gesture (e.g., a swipe). The velocity of aninput gesture swipe can be considered in addition to or instead of thetime delta. The extent of the input gesture (e.g., finger-dragging orswipe motion) can be considered when detecting a user input. Forexample, a certain percentage of the width of the covered section can beselected, e.g., 80%, to recognize a user's input motion as a swipemotion; other thresholds and ranges may of course also be used. Forexample, assuming a mobile's screen has 100 logical pixels in width (theexact number of pixel depends on the device's screen density), if theuser has swiped more than 80 logical pixel left or right, the controlwould be snapped to the left or to the right. If the user releases theitem before that, it would snap back to the original position. While onepercentage of the width is give as an example, others may of course beused, e.g., 75%, 76%, 85%, 70%, 72%, etc.; any suitable value may beused.

FIG. 2 depicts an example of a how a user could use the SwishLinks App200 resident on a mobile device to connect other users. The process(SwishLinks App) 200 may accordingly connect two or more people (one toone, one to many or many to one) with a simple gesture or gestures.Multiple device screenshots (202-204, 208-212) are shown, depicting theuser experience. An inquiry as to whether a user is a SwishLinks User isshown (as a question, with conditional branches to 208 and 210). Asummary of the progression of the user experience is shown in table 214,describing steps 1-5. At Step 1, the user swipes to the right across thescreen of the mobile device. This reveals an “Introduce” statusindicator and launches a “Swishing” summary panel. At Step 2, the userswipes to the left. That motion reveals a status indicator and launchesthe Swishing summary panel, if it is not already open. At Step 3, theuser can input a message to send to the Provider and/or Seeker. At Step5, the Seeker and Provider names are displayed.

FIG. 3 shows a flow chart that illustrates a process 300 of looking forsomeone in order to complete a project by creating a post by looking fora specific skill or occupation in accordance with an example of anembodiment of the present disclosure. As a high-level summary of FIG. 3,a user creating a post, e.g., a Seeker, can select recipients that canact as Connector to connect the Seeker to a Provider. The Seeker createsa post by entering the type of skill they are looking for and thenselects the recipients that can receive the post in order to introducesomeone. A recipient, in this case the Connector, can be a SL-USER ornot. When they are, an in-app post is accessed from the Links tab underthe posts page. When they are not users a ghost profile account iscreated and a web link is sent to them to be able to introduce someonewithout the need to create an account.

With continued reference to FIG. 3, process 300 is now described in moredetail. A Seeker creates a post and selects one or more recipients thatare to act as a Connector, as shown at 302. Process 300 canconsider/determine whether each Connector is a SwishLinks User, as shownat 304 (as a question, with conditional branches to 306 and 308). If aConnector is not a SwishLinks User, a ghost profile is created (if itdoesn't already exist) based on contact information, e.g., an emailaddress, or phone number, as shown at 306. A message is sent to theConnector (depending on the Seeker's selection), as shown at 310; theConnector receives a Web link to introduce someone. The Connectorselects a Provider from their device's contacts list using their mobileWeb browser and initiates an introduction, as shown at 314.

Continuing with the description of process 300, if the Connector is aSwishLinks User, the Connector navigates to the Links Tab in the SL-Appunder the Posts page, and then selects Introduce Someone, as shown at308. The Seeker in this case is already preselected, and the Connectorswipes from left to right to select the Provider, as shown at 312. Adetermination/consideration of whether the Provider is a SwishLinks Usercan be made, as shown at 316 (as a question, with conditional branchesto 318 and 320). For the case that the Provider is not a SwishLinksUser, the Connector selects a contact (contact information such as emailaddress or phone number) to use to connect with the Provider, as shownat 318. The Connector is offered the option to add a message that willbe sent to both parties, then the Connector selects Send, as shown at320. An introduction message is then sent to both parties.

The form of the introduction message can differ, depending on whetherthe Provider is a SwishLinks User. A determination of whether theProvider is a SwishLinks User is shown at 322. If the Provider is not aSwishLinks User, a ghost profile is created (if it doesn't alreadyexist) based on the email address or phone number, as shown at 324. Ifthe Provider is not a SwishLinks User, a SMS message or an email is sentto the Provider (depending on the Connector's selection) and theProvider receives a Web link with options to accept or decline theIntroduction, as shown at 328. If the Provide is a SwishLinks User, theProvider receives a request in the SL-App to accept or decline theIntroduction, as shown at 326. The Provider is given the option toaccept or decline the Introduction, as shown at 330 (as a question, withconditional branch to 332; the branch declining the Introduction isomitted for clarity). The Seeker receives a request in the SL-App toaccept or decline the Introduction, as shown at 332. A determination canbe made as to whether the Provider created a SL account, as shown at 334(as a question, with conditional branches to 336 and 338). If theProvider has not created a SL account, the Seeker is granted access tothe Provider's contacts, as shown at 336. If the Provider has created aSL account, the Seeker and Provider are connected, as shown at 338.

FIG. 4 illustrates the user experience in the process 400 of looking forsomeone in order to complete a project by creating a post by looking fora specific skill or occupation in accordance with an example of anembodiment of the present disclosure. The user experience is indicatedby screenshots 402-406 and 410-414 and is generally similar to the oneshown and described for FIG. 2. Table 416 shows Steps 1-2. Step 1,relating to the “To” field, shows that the To field is prefilled withthe Original Poster's name (Seeker) and cannot be edited. At Step 2, theSeeker/Provider name(s) are displayed.

FIGS. 5A-E depict various differences between embodiments of the presentdisclosure and a prior-art software application.

FIGS. 6A-C depict various differences between embodiments of the presentdisclosure and another prior-art software application.

FIGS. 7A-C depict various differences between embodiments of the presentdisclosure and a further prior-art software application.

Provided below are comparisons of exemplary embodiments of thedisclosure (referred to as “SwishLinks”) to prior techniques andapplications:

LinkedIn

Feature LinkedIn SwishLinks Facilitate an introduction between platformYes Yes users. Facilitate an introduction between non-users. No YesRequest permission from involved parties for Yes/No Yes an introduction.See a list of your connections (both non-users No Yes and users) anddecide who to introduce to whom. Swipe on a connection to select partiesto be No Yes introduced. See a list of your contact information and NoYes decide what to share in the context of an introduction. Generate acustom contact card (vCard) that No Yes can be saved to a person'sdevice as a contact. Receive notifications about the status of an Yes/NoYes introduction.

For “Request permission from involved parties for an introduction,” theprocess of sending individual messages on LinkedIn may be done in such away where permission is required from each involved party.

Regarding “Receive notifications about the status of an introduction, aLinkedIn user will receive message notifications if the conversationbetween the involved parties continues in the group message.

Facebook

Feature Facebook SwishLinks Facilitate an introduction between platformYes Yes users. Facilitate an introduction between non-users. No YesRequest permission from involved parties for Yes/No Yes an introduction.See a list of your connections (both non-users No Yes and users) anddecide who to introduce to whom. Swipe on a connection to select partiesto be No Yes introduced. See a list of your contact information and NoYes decide what to share in the context of an introduction. Generate acustom contact card (vCard) that No Yes can be saved to a person'sdevice as a contact. Receive notifications about the status of an Yes/NoYes introduction.

For “Request permission from involved parties for an introduction,” theprocess of sending individual messages may be done in such a way wherepermission from each involved party.

Regarding “Receive notifications about the status of an introduction,” auser LinkedIn user will receive message notifications if theconversation between the involved parties continues in the groupmessage. A LinkedIn user will receive notifications when there is aresponse to a post that the user created or responded to.

Atmospheir

Feature Facebook SwishLinks Facilitate an introduction between platformYes Yes users. Facilitate an introduction between non-users. No YesRequest permission from involved parties for Yes Yes an introduction.See a list of your connections (both non-users No Yes and users) anddecide who to introduce to whom. See a list of your contact informationand No Yes decide what to share in the context of an introduction. Swipeon a connection to select parties to No Yes be introduced. Generate acustom contact card (vCard) that No Yes can be saved to a person'sdevice as a contact. Receive notifications about the status of an YesYes introduction.

An example of a general method of connecting includes:

A touchscreen-user-interface-implemented method for connecting one ormore members of a first group to one or more members of a second group,the method including:

-   -   monitoring a user input area of a touchscreen user interface;    -   from the user input area, receiving a user indication that a        connection between a member of the first group and a member of        the second group is to be made;    -   in response to the user connection indication, importing a list        of members of the first group and displaying the list in the        user interface;    -   after displaying the list and while monitoring the user input        area, receiving a first user swipe input as a detected first        user-finger-dragging motion;    -   verifying that the time elapsed between the beginning and        completion of the first user-finger-dragging motion is within a        predetermined range and constitutes a single continuous motion,        thereby recognizing a first swipe motion;    -   upon verifying the time and continuity of the user's first swipe        motion, indicating in the user interface a selection of a member        of the first group;    -   while monitoring the user input area, receiving a second user        swipe input as a detected second user-finger-dragging motion;    -   verifying that the time elapsed between the beginning and        completion of the second user-finger-dragging motion is within a        predetermined amount of time and constitutes a single continuous        motion, thereby recognizing a second swipe motion;    -   upon verifying the time and continuity of the user's second        swipe motion, indicating in the user interface a selection of a        member of the second group; and    -   updating a list of connections to indicate that the a member of        the first group is connected to a member of the second group;        and    -   displaying a visual indication on the graphical user interface        indicating that the member of the first group and member of the        second group are connected. The step of updating a list of        connections can include updating a database of the backend; the        step of updating a list of connections can include updating a        table or list of the frontend.

The description herein of embodiments and examples of the disclosure iscentralized on the Frontend experience and the simplicity of connectingtwo or more persons. A backend is used for embodiments of thedisclosure, though such use will normally be transparent (i.e., notseen) by a user. Any suitable database(s) and server(s) may be used asor for such backend.

Unless otherwise indicated, the mobile applications that have beendiscussed herein are implemented with a specially-configured computer orcomputing system, e.g., mobile device, specifically configured toperform the functions that have been described herein for theapplications. Each computer system or device can include one or moreprocessors, tangible memories (e.g., random access memories (RAMs),read-only memories (ROMs), and/or programmable read only memories(PROMS)), tangible storage devices (e.g., hard disk drives, CD/DVDdrives, and/or flash memories), system buses, video processingcomponents, network communication components, input/output ports, and/oruser interface devices (e.g., keyboards, pointing devices, displays,microphones, sound reproduction systems, and/or touch screens).

Each computer system or device may include software (e.g., one or moreoperating systems, device drivers, application programs, and/orcommunication programs). When software is included, the softwareincludes programming instructions and may include associated data andlibraries. When included, the programming instructions are configured toimplement one or more algorithms that implement one or more of thefunctions of the computer system, as recited herein. The description ofeach function that is performed by each computer system also constitutesa description of the algorithm(s) that performs that function. Anysuitable programming language may be used for such software andapplication (Apps); suitable examples include, but are not limited to C,C++, C#, Java, Python, R, PHP, JavaScript, Ruby, Go, Ladder Logic, HTMLand bash.

The software may be stored on or in one or more non-transitory, tangiblestorage devices, such as one or more hard disk drives, CDs, DVDs, and/orflash memories. The software may be in source code and/or object codeformat. Associated data may be stored in any type of volatile and/ornon-volatile memory. The software may be loaded into a non-transitorymemory and executed by one or more processors.

The components, steps, features, objects, benefits, and advantages thathave been discussed are merely illustrative. None of them, or thediscussions relating to them, is intended to limit the scope ofprotection in any way. Numerous other embodiments are also contemplated.These include embodiments that have fewer, additional, and/or differentcomponents, steps, features, objects, benefits, and/or advantages. Thesealso include embodiments in which the components and/or steps arearranged and/or ordered differently.

For example, while exemplary embodiments are described as introducingone user to another, as was mentioned above the scope of the presentdisclosure is not limited to such. Other embodiments of the presentdisclosure may be utilized to introduce (i) a job to person, (ii) abusiness (e.g., a restaurant, company, etc.) to person, (iii) places(tourism, historic, etc.) to person, (iv) file sharing (e.g., pictures,videos, documents, etc.) to person, and/or (v) location (e.g., a GPSlocation) to a person, Furthermore, while exemplary embodiments aredescribed herein in the context of one user sending information orconnecting to a single other user, the present disclosure is not limitedto such. For example, the following types of connections, or mappings,between users are included: (i) one to one (a member of a first group isconnected to a member of a second group), (ii) one to many (a member ofa first group is connected to multiple members of a second group), (iii)many to one (multiple members of a first group are connection to amember of a second group), and (iv) many to many (multiple members ofone group are connected to multiple members of a second group).

Unless otherwise stated, all measurements, values, ratings, positions,magnitudes, sizes, and other specifications that are set forth in thisspecification, including in the claims that follow, are approximate, notexact. They are intended to have a reasonable range that is consistentwith the functions to which they relate and with what is customary inthe art to which they pertain.

Accordingly, embodiments of the present disclosure provide benefits andadvantages over prior techniques. Embodiments of the present disclosurecan allow or facilitate users to move away from communicating andnetworking through techniques such as email. Exemplary embodiments canprovide users of touchscreens to be able to link up with other users(e.g., peers) via social media applications in a simple and quickmanner.

All articles, patents, patent applications, and other publications thathave been cited in this disclosure are incorporated herein by reference.

The phrase “means for” when used in a claim is intended to and should beinterpreted to embrace the corresponding structures and materials thathave been described and their equivalents. Similarly, the phrase “stepfor” when used in a claim is intended to and should be interpreted toembrace the corresponding acts that have been described and theirequivalents. The absence of these phrases from a claim means that theclaim is not intended to and should not be interpreted to be limited tothese corresponding structures, materials, or acts, or to theirequivalents.

The scope of protection is limited solely by the claims that now follow.That scope is intended and should be interpreted to be as broad as isconsistent with the ordinary meaning of the language that is used in theclaims when interpreted in light of this specification and theprosecution history that follows, except where specific meanings havebeen set forth, and to encompass all structural and functionalequivalents.

Relational terms such as “first” and “second” and the like may be usedsolely to distinguish one entity or action from another, withoutnecessarily requiring or implying any actual relationship or orderbetween them. The terms “comprises,” “comprising,” and any othervariation thereof when used in connection with a list of elements in thespecification or claims are intended to indicate that the list is notexclusive and that other elements may be included. Similarly, an elementproceeded by an “a” or an “an” does not, without further constraints,preclude the existence of additional elements of the identical type.

None of the claims are intended to embrace subject matter that fails tosatisfy the requirement of Sections 101, 102, or 103 of the Patent Act,nor should they be interpreted in such a way. Any unintended coverage ofsuch subject matter is hereby disclaimed. Except as just stated in thisparagraph, nothing that has been stated or illustrated is intended orshould be interpreted to cause a dedication of any component, step,feature, object, benefit, advantage, or equivalent to the public,regardless of whether it is or is not recited in the claims.

The abstract is provided to help the reader quickly ascertain the natureof the technical disclosure. It is submitted with the understanding thatit will not be used to interpret or limit the scope or meaning of theclaims. In addition, various features in the foregoing detaileddescription are grouped together in various embodiments to streamlinethe disclosure. This method of disclosure should not be interpreted asrequiring claimed embodiments to require more features than areexpressly recited in each claim. Rather, as the following claimsreflect, inventive subject matter lies in less than all features of asingle disclosed embodiment. Thus, the following claims are herebyincorporated into the detailed description, with each claim standing onits own as separately claimed subject matter.

What is claimed is:
 1. A computer-implemented memory-efficient methodutilizing a touchscreen for connecting users within a network of users,the method comprising: monitoring a user input area of a touchscreenuser interface; from the user input area, receiving a user indicationthat a connection between a seeker and a provider is to be made; inresponse to the user connection indication, importing a list of contactsand displaying the list in the user interface; after displaying the listand while monitoring the user input area, receiving a first user swipeinput as a detected first user-finger-dragging motion; verifying thatthe time elapsed between the beginning and completion of the firstuser-finger-dragging motion is within a predetermined range andconstitutes a single continuous motion, thereby recognizing a firstswipe motion; upon verifying the time and continuity of the user's firstswipe motion, indicating in the user interface a selection of aprovider; while continuing to monitor the user input area, receiving asecond user swipe input as a detected second user-finger-draggingmotion; verifying that the time elapsed between the beginning andcompletion of the second user-finger-dragging motion is within apredetermined amount of time and constitutes a single continuous motion,thereby recognizing a second swipe motion; upon verifying the time andcontinuity of the user's second swipe motion, indicating in the userinterface a selection of a seeker; after indication of the selection ofthe seeker, receiving a user input initiating electronic transmission ofan introduction message to the selected seeker; receiving an electronicacceptance of the introduction message from the selected seeker; afterreceiving the electronic acceptance from the seeker, electronicallysending a request to the provider to accept or decline the introduction;receiving an electronic acceptance of the introduction message from theprovider; and in response to the provider accepting the introduction,displaying a visual indication on the graphical user interfaceindicating that the provider and seeker are connected.
 2. The method ofclaim 1, wherein the first swipe motion is from left to right on themobile touch screen.
 3. The method of claim 1, wherein the second swipemotion is from right to left on the mobile touch screen.
 4. The methodof claim 1, wherein the first swipe motion is from right to left on themobile touch screen.
 5. The method of claim 1, wherein the second swipemotion is from left to right on the mobile touch screen.
 6. The methodof claim 1, further comprising revising a database linked to the userinterface to indicate that the provider and seeker are connected.
 7. Themethod of claim 1, wherein verifying the user's first swipe motionfurther includes verifying that the angle of the swipe motion withrespect to a horizontal axis of the user interface is within apredetermined range.
 8. The method of claim 1, wherein verifying theuser's second swipe motion further includes verifying that the angle ofthe swipe motion with respect to a horizontal axis of the user interfaceis within a predetermined range.
 9. A non-transitory, tangible,computer-readable storage medium containing a program of instructionsthat causes a computer system having a processor running the program ofinstructions to: monitor a user input area of a touchscreen userinterface; from the user input area, receive a user indication that aconnection between a seeker and a provider is to be made; in response tothe user connection indication, import a list of contacts and displaythe list in the user interface; after the list of contacts is displayedand while the user input area is monitored, receive a first user swipeinput as a detected first user-finger-dragging motion; verify that thetime elapsed between the beginning and completion of the firstuser-finger-dragging motion is within a predetermined range andconstitutes a single continuous motion, thereby recognizing a firstswipe motion; upon verification of the time and continuity of the user'sfirst swipe motion, indicate in the user interface a selection of aprovider; while continuing to monitor the user input area, receive asecond user swipe input as a detected second user-finger-draggingmotion; verify that the time elapsed between the beginning andcompletion of the second user-finger-dragging motion is within apredetermined amount of time and constitutes a single continuous motion,thereby recognizing a second swipe motion; upon verification of the timeand continuity of the user's second swipe motion, indicate in the userinterface a selection of a seeker; after indication of the selection ofthe seeker, receive a user input initiating electronic transmission ofan introduction message to the selected seeker; receive an electronicacceptance of the introduction message from the selected seeker; afterreceipt of the electronic acceptance from the seeker, electronicallysend a request to the provider to accept or decline the introduction;receive an electronic acceptance of the introduction message from theprovider; and in response to the provider acceptance of theintroduction, display a visual indication on the graphical userinterface indicating that the provider and seeker are connected.
 10. Thenon-transitory, tangible, computer-readable storage medium of claim 9,wherein the program further comprises instructions to recognize afinger-dragging motion from left to right on the mobile touch screen asthe first swipe motion.
 11. The non-transitory, tangible,computer-readable storage medium of claim 9, wherein the program furthercomprises instructions to recognize a finger-dragging motion from rightto left on the mobile touch screen as the second swipe motion.
 12. Thenon-transitory, tangible, computer-readable storage medium of claim 9,wherein the program further comprises instructions to recognize afinger-dragging motion from right to left on the mobile touch screen asthe first swipe motion.
 13. The non-transitory, tangible,computer-readable storage medium of claim 9, wherein the program furthercomprises instructions to recognize a finger-dragging motion from leftto right on the mobile touch screen as the second swipe motion.
 14. Thenon-transitory, tangible, computer-readable storage medium of claim 9,wherein the program further comprises instructions to revise a databaselinked to the user interface to indicate that the provider and seekerare connected.
 15. The non-transitory, tangible, computer-readablestorage medium of claim 9, wherein the program further comprisesinstructions to verify the user's first swipe motion by verifying thatthe angle of the swipe motion with respect to a horizontal axis of theuser interface is within a predetermined range.
 16. The non-transitory,tangible, computer-readable storage medium of claim 9, wherein theprogram further comprises instructions to verify the user's first swipemotion by verifying that the angle of the swipe motion with respect to ahorizontal axis of the user interface is within a predetermined range.17. A computing device comprising: a touchscreen having a touchscreenuser interface; one or more processors; memory; and one or moreprograms, wherein the one or more programs are stored in the memory andconfigured to be executed by the one or more processors, the one or moreprograms including: instructions for: monitoring a user input area ofthe touchscreen user interface; from the user input area, receiving auser indication that a connection between a seeker and a provider is tobe made; in response to the user connection indication, importing a listof contacts and displaying the list in the user interface; afterdisplaying the list and while monitoring the user input area, receivinga first user swipe input as a detected first user-finger-draggingmotion; verifying that the time elapsed between the beginning andcompletion of the first user-finger-dragging motion is within apredetermined range and constitutes a single continuous motion, therebyrecognizing a first swipe motion; upon verifying the time and continuityof the user's first swipe motion, indicating in the user interface aselection of a provider; while continuing to monitor the user inputarea, receiving a second user swipe input as a detected seconduser-finger-dragging motion; verifying that the time elapsed between thebeginning and completion of the second user-finger-dragging motion iswithin a predetermined amount of time and constitutes a singlecontinuous motion, thereby recognizing a second swipe motion; uponverifying the time and continuity of the user's second swipe motion,indicating in the user interface a selection of a seeker; afterindication of the selection of the seeker, receiving a user inputinitiating electronic transmission of an introduction message to theselected seeker; receiving an electronic acceptance of the introductionmessage from the selected seeker; after receiving the electronicacceptance from the seeker, electronically sending a request to theprovider to accept or decline the introduction; receiving an electronicacceptance of the introduction message from the provider; and inresponse to the provider accepting the introduction, displaying a visualindication on the graphical user interface indicating that the providerand seeker are connected.
 18. The computing device of claim 17, whereinthe first swipe motion is from left to right on the mobile touch screen.19. The computing device of claim 17, wherein the second swipe motion isfrom right to left on the mobile touch screen.
 20. The computing deviceof claim 17, wherein the first swipe motion is from right to left on themobile touch screen.